﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Caching;
using System.Web.Mvc;
//using www.SService;

namespace www.Controllers
{
    public class TypeController : Controller
    {
        private readonly ObjectCache _cache = MemoryCache.Default;
        //private readonly ServiceClient _service1 = new ServiceClient();

        ////
        //// GET: /Type/
        //[HttpGet]
        //public ActionResult Index()
        //{
        //    try
        //    {
        //        if (_cache["Type"] == null)
        //        {
        //            var lData = _service1.GeTypeDataContracts();
        //            if (lData.Any())
        //            {
        //                var policy = new CacheItemPolicy { AbsoluteExpiration = DateTimeOffset.Now.AddHours(27) };
        //                _cache.Set("Type", lData, policy);
        //                ViewData["Data"] = lData.ToList();
        //            }
        //        }
        //        else
        //        {
        //            var lData = (List<RelaxTypeDataContract>)_cache["Type"];
        //            ViewData["Data"] = lData.ToList();
        //        }
        //        return View();
        //    }
        //    catch (Exception ex)
        //    {
        //        Response.Write("<script>alert('chi tiết lỗi:" + ex.Message + "');</script>");
        //        return View();
        //    }
        //}
        //[HttpGet]
        //public ActionResult Add()
        //{
        //    return View();
        //}
        //[HttpPost]
        //public ActionResult Add(FormCollection collection)
        //{
        //    try
        //    {
        //        var name = collection["txtName"];
        //        if (string.IsNullOrEmpty(name))
        //        {
        //            Response.Write("<script>alert('tên không được trống');</script>");
        //            return View();
        //        }
        //        var type = new RelaxTypeDataContract
        //        {
        //            Name = name,
        //            Decription = collection["txtDecription"],
        //            Tag = name.Replace(' ', '-')
        //        };
        //        //var id = _service1.AddType(type);
        //        //if (id > 0)
        //        //{
        //        //    type.Id = id;
        //        //    var lData = (List<RelaxTypeDataContract>)_cache["Type"];
        //        //    if (lData.Any())
        //        //        lData.Add(type);
        //        //    else
        //        //        lData = new List<RelaxTypeDataContract> { type };

        //        //    ViewData["Data"] = lData.ToList();
        //        //    return RedirectToAction("Index", "Type");
        //        //}
        //        Response.Write("<script>alert('lỗi');</script>");
        //        return View();
        //    }
        //    catch (Exception ex)
        //    {
        //        Response.Write("<script>alert('chi tiết lỗi:" + ex.Message + "');</script>");
        //        return View();
        //    }
        //}

        //[HttpGet]
        //public ActionResult Edit(int id=0)
        //{
        //    try
        //    {
        //        var lData = (List<RelaxTypeDataContract>)_cache["Type"];
        //        var first = lData.FirstOrDefault(p => p.Id == id);
        //        return View(first);
        //    }
        //    catch (Exception ex)
        //    {
        //        Response.Write("<script>alert('chi tiết lỗi:" + ex.Message + "');</script>");
        //        return RedirectToAction("Index", "Type");
        //    }
            
        //}
        //[HttpPost]
        //public ActionResult Edit(FormCollection collection)
        //{
        //    try
        //    {
        //        var id = collection["id"];
        //        var name = collection["txtName"];
        //        if (string.IsNullOrEmpty(name))
        //        {
        //            Response.Write("<script>alert('tên không được trống');</script>");
        //            return View();
        //        }
        //        var lData = (List<RelaxTypeDataContract>)_cache["Type"];
        //        var first = lData.FirstOrDefault(p => p.Id == Convert.ToInt32(id));

        //        if (first != null)
        //        {
        //            first.Name = name;
        //            first.Decription = collection["txtDecription"];
        //            first.Tag = name.Replace(' ', '-');
        //            //var check = _service1.UpdateType(first);
        //            //if (check)
        //            //{
        //            //    ViewData["Data"] = lData.ToList();
        //            //    return RedirectToAction("Index", "Type");
        //            //}
        //        }
        //        Response.Write("<script>alert('lỗi');</script>");
        //        return View();
        //    }
        //    catch (Exception ex)
        //    {
        //        Response.Write("<script>alert('chi tiết lỗi:" + ex.Message + "');</script>");
        //        return View();
        //    }
        //}

        //[HttpGet]
        //public ActionResult Delete(int id)
        //{
        //    try
        //    {
        //        var lId = new List<int> { id };
        //        //var ok = _service1.DeleteType(lId);
        //        //if (ok)
        //        //{
        //        //    var lData = (List<RelaxTypeDataContract>)_cache["Type"];
        //        //    var first = lData.FirstOrDefault(p => p.Id == id);
        //        //    if (first != null)
        //        //    {
        //        //        lData.Remove(first);
        //        //    }
        //        //    _cache["Advertise"] = lData;
        //        //}
        //        return RedirectToAction("Index", "Type");
        //    }
        //    catch (Exception ex)
        //    {
        //        Response.Write("<script>alert('chi tiết lỗi:" + ex.Message + "');</script>");
        //        return RedirectToAction("Index", "Type");
        //    }

        //}
      
    }
}
